home *** CD-ROM | disk | FTP | other *** search
/ Sound Blastoff / Sound Blastoff.iso / Sound Utilities / PlayerPRO 4.4.2 (FAT) / Plugs / Amplitude / Amplitude.rsrc / CODE_1000_Amplitude plug.txt next >
Text File  |  1995-04-16  |  23KB  |  418 lines

  1. # near model CODE resource
  2. # this CODE claims to have no jump table entries (but starts at 600A)
  3. 00000000  434F                     chk.w      D1, A7
  4. 00000002  4445                     neg.w      D5
  5. 00000004  03E8 0000                bset       [A0 + 0x0], D1
  6. 00000008  48E7 E0C8                movem.l    -[A7], D0,D1,D2,A0,A1,A4
  7. 0000000C  4EBA 00F2                jsr        [PC + 0xF2 /* 00000100 */]
  8. 00000010  41FA FFEA                lea.l      A0, [PC - 0x16 /* FFFFFFFC */]
  9. 00000014  2008                     move.l     D0, A0
  10. 00000016  A055                     syscall    StripAddress
  11. 00000018  4EBA 0090                jsr        [PC + 0x90 /* 000000AA */]
  12. 0000001C  4CDF 1307                movem.l    D0,D1,D2,A0,A1,A4, [A7]+
  13. 00000020  4EFA 02C0                jmp        [PC + 0x2C0 /* 000002E2 */]
  14. fn00000024:
  15. 00000024  41FA FFD6                lea.l      A0, [PC - 0x2A /* FFFFFFFC */]
  16. 00000028  D1FC 0000 0407           add.l      A0, 0x407
  17. 0000002E  2008                     move.l     D0, A0
  18. 00000030  A055                     syscall    StripAddress
  19. 00000032  4E75                     rts
  20. fn00000034:
  21. 00000034  48E7 0600                movem.l    -[A7], D5,D6
  22. 00000038  594F                     subq.w     A7, 4
  23. 0000003A  206F 0010                movea.l    A0, [A7 + 0x10]
  24. 0000003E  226F 0014                movea.l    A1, [A7 + 0x14]
  25. 00000042  2C2F 0018                move.l     D6, [A7 + 0x18]
  26. 00000046  1E98                     move.b     [A7], [A0]+
  27. 00000048  1F58 0001                move.b     [A7 + 0x1], [A0]+
  28. 0000004C  1F58 0002                move.b     [A7 + 0x2], [A0]+
  29. 00000050  1F58 0003                move.b     [A7 + 0x3], [A0]+
  30. 00000054  2A17                     move.l     D5, [A7]
  31. 00000056  7400                     moveq.l    D2, 0x00
  32. 00000058  6044                     bra        +0x46 /* 0000009E */
  33. label0000005A:
  34. 0000005A  1218                     move.b     D1, [A0]+
  35. 0000005C  1001                     move.b     D0, D1
  36. 0000005E  0240 0080                andi.w     D0, 0x80
  37. 00000062  670C                     beq        +0xE /* 00000070 */
  38. 00000064  D201                     add.b      D1, D1
  39. 00000066  1001                     move.b     D0, D1
  40. 00000068  4880                     ext.w      D0
  41. 0000006A  48C0                     ext.l      D0
  42. 0000006C  D480                     add.l      D2, D0
  43. 0000006E  6028                     bra        +0x2A /* 00000098 */
  44. label00000070:
  45. 00000070  1E81                     move.b     [A7], D1
  46. 00000072  1F58 0001                move.b     [A7 + 0x1], [A0]+
  47. 00000076  1001                     move.b     D0, D1
  48. 00000078  0240 0040                andi.w     D0, 0x40 /* '@' */
  49. 0000007C  670C                     beq        +0xE /* 0000008A */
  50. 0000007E  3017                     move.w     D0, [A7]
  51. 00000080  E548                     lsl        D0.w, 2
  52. 00000082  E240                     asr        D0.w, 1
  53. 00000084  48C0                     ext.l      D0
  54. 00000086  D480                     add.l      D2, D0
  55. 00000088  600E                     bra        +0x10 /* 00000098 */
  56. label0000008A:
  57. 0000008A  1F58 0002                move.b     [A7 + 0x2], [A0]+
  58. 0000008E  1F58 0003                move.b     [A7 + 0x3], [A0]+
  59. 00000092  2417                     move.l     D2, [A7]
  60. 00000094  E58A                     lsl        D2, 2
  61. 00000096  E282                     asr        D2, 1
  62. label00000098:
  63. 00000098  DDB1 2800                add.l      [A1 + D2], D6
  64. 0000009C  5385                     subq.l     D5, 1
  65. label0000009E:
  66. 0000009E  4A85                     tst.l      D5
  67. 000000A0  6EB8                     bgt        -0x46 /* 0000005A */
  68. 000000A2  584F                     addq.w     A7, 4
  69. 000000A4  4CDF 0060                movem.l    D5,D6, [A7]+
  70. 000000A8  4E75                     rts
  71. fn000000AA:
  72. 000000AA  48E7 1020                movem.l    -[A7], D3,A2
  73. 000000AE  2440                     movea.l    A2, D0
  74. 000000B0  202C 8000                move.l     D0, [A4 - 0x8000]
  75. 000000B4  260A                     move.l     D3, A2
  76. 000000B6  9680                     sub.l      D3, D0
  77. 000000B8  6740                     beq        +0x42 /* 000000FA */
  78. 000000BA  4A80                     tst.l      D0
  79. 000000BC  661C                     bne        +0x1E /* 000000DA */
  80. 000000BE  422C 8004                clr.b      [A4 - 0x7FFC]
  81. 000000C2  303C A89F                move.w     D0, 0xA89F
  82. 000000C6  A746                     syscall    GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
  83. 000000C8  2F08                     move.l     -[A7], A0
  84. 000000CA  303C A198                move.w     D0, 0xA198
  85. 000000CE  A346                     syscall    GetOSTrapAddress, flags=3
  86. 000000D0  B1DF                     cmpa.l     A0, [A7]+
  87. 000000D2  56C0                     sne        D0
  88. 000000D4  4400                     neg.b      D0
  89. 000000D6  1940 8004                move.b     [A4 - 0x7FFC], D0
  90. label000000DA:
  91. 000000DA  2F03                     move.l     -[A7], D3
  92. 000000DC  2F0A                     move.l     -[A7], A2
  93. 000000DE  4EBA FF44                jsr        [PC - 0xBC /* 00000024 */]
  94. 000000E2  2F00                     move.l     -[A7], D0
  95. 000000E4  4EBA FF4E                jsr        [PC - 0xB2 /* 00000034 */]
  96. 000000E8  4FEF 000C                lea.l      A7, [A7 + 0xC]
  97. 000000EC  294A 8000                move.l     [A4 - 0x8000], A2
  98. 000000F0  4A2C 8004                tst.b      [A4 - 0x7FFC]
  99. 000000F4  6704                     beq        +0x6 /* 000000FA */
  100. 000000F6  7001                     moveq.l    D0, 0x01
  101. 000000F8  A198                     syscall    HWPriv, flags=1
  102. label000000FA:
  103. 000000FA  4CDF 0408                movem.l    D3,A2, [A7]+
  104. 000000FE  4E75                     rts
  105. fn00000100:
  106. 00000100  41FA FEFA                lea.l      A0, [PC - 0x106 /* FFFFFFFC */]
  107. 00000104  D1FC 0000 8402           add.l      A0, 0x8402
  108. 0000010A  2008                     move.l     D0, A0
  109. 0000010C  A055                     syscall    StripAddress
  110. 0000010E  C18C                     exg        D0, A4
  111. 00000110  4E75                     rts
  112. 00000112  4E75                     rts
  113. fn00000114:
  114. 00000114  48E7 1820                movem.l    -[A7], D3,D4,A2
  115. 00000118  4FEF FFF0                lea.l      A7, [A7 - 0x10]
  116. 0000011C  246F 0020                movea.l    A2, [A7 + 0x20]
  117. 00000120  362A 0016                move.w     D3, [A2 + 0x16]
  118. 00000124  966A 0012                sub.w      D3, [A2 + 0x12]
  119. 00000128  382A 0014                move.w     D4, [A2 + 0x14]
  120. 0000012C  986A 0010                sub.w      D4, [A2 + 0x10]
  121. 00000130  4857                     pea.l      [A7]
  122. 00000132  A972                     syscall    GetMouse
  123. 00000134  4857                     pea.l      [A7]
  124. 00000136  A870                     syscall    LocalToGlobal
  125. 00000138  486F 0004                pea.l      [A7 + 0x4]
  126. 0000013C  2078 0CC8                movea.l    A0, [0x00000CC8 /* TheGDevice */]
  127. 00000140  2050                     movea.l    A0, [A0]
  128. 00000142  3028 0024                move.w     D0, [A0 + 0x24]
  129. 00000146  5040                     addq.w     D0, 8
  130. 00000148  3F00                     move.w     -[A7], D0
  131. 0000014A  2078 0CC8                movea.l    A0, [0x00000CC8 /* TheGDevice */]
  132. 0000014E  2050                     movea.l    A0, [A0]
  133. 00000150  702B                     moveq.l    D0, 0x2B
  134. 00000152  D068 0022                add.w      D0, [A0 + 0x22]
  135. 00000156  3F00                     move.w     -[A7], D0
  136. 00000158  2078 0CC8                movea.l    A0, [0x00000CC8 /* TheGDevice */]
  137. 0000015C  2050                     movea.l    A0, [A0]
  138. 0000015E  3028 0028                move.w     D0, [A0 + 0x28]
  139. 00000162  5140                     subq.w     D0, 8
  140. 00000164  3F00                     move.w     -[A7], D0
  141. 00000166  2078 0CC8                movea.l    A0, [0x00000CC8 /* TheGDevice */]
  142. 0000016A  2050                     movea.l    A0, [A0]
  143. 0000016C  3028 0026                move.w     D0, [A0 + 0x26]
  144. 00000170  5140                     subq.w     D0, 8
  145. 00000172  3F00                     move.w     -[A7], D0
  146. 00000174  A8A7                     syscall    SetRect
  147. 00000176  3043                     movea.w    A0, D3
  148. 00000178  2008                     move.l     D0, A0
  149. 0000017A  81FC 0002                divs.w     D0, 0x2
  150. 0000017E  322F 0002                move.w     D1, [A7 + 0x2]
  151. 00000182  9240                     sub.w      D1, D0
  152. 00000184  3F41 000E                move.w     [A7 + 0xE], D1
  153. 00000188  3001                     move.w     D0, D1
  154. 0000018A  D043                     add.w      D0, D3
  155. 0000018C  B06F 000A                cmp.w      D0, [A7 + 0xA]
  156. 00000190  6D0C                     blt        +0xE /* 0000019E */
  157. 00000192  302F 000A                move.w     D0, [A7 + 0xA]
  158. 00000196  9043                     sub.w      D0, D3
  159. 00000198  3F40 000E                move.w     [A7 + 0xE], D0
  160. 0000019C  600E                     bra        +0x10 /* 000001AC */
  161. label0000019E:
  162. 0000019E  3001                     move.w     D0, D1
  163. 000001A0  B06F 0006                cmp.w      D0, [A7 + 0x6]
  164. 000001A4  6E06                     bgt        +0x8 /* 000001AC */
  165. 000001A6  3F6F 0006 000E           move.w     [A7 + 0xE], [A7 + 0x6]
  166. label000001AC:
  167. 000001AC  3044                     movea.w    A0, D4
  168. 000001AE  2008                     move.l     D0, A0
  169. 000001B0  81FC 0002                divs.w     D0, 0x2
  170. 000001B4  3217                     move.w     D1, [A7]
  171. 000001B6  9240                     sub.w      D1, D0
  172. 000001B8  3F41 000C                move.w     [A7 + 0xC], D1
  173. 000001BC  3001                     move.w     D0, D1
  174. 000001BE  D044                     add.w      D0, D4
  175. 000001C0  B06F 0008                cmp.w      D0, [A7 + 0x8]
  176. 000001C4  6D0C                     blt        +0xE /* 000001D2 */
  177. 000001C6  302F 0008                move.w     D0, [A7 + 0x8]
  178. 000001CA  9044                     sub.w      D0, D4
  179. 000001CC  3F40 000C                move.w     [A7 + 0xC], D0
  180. 000001D0  600E                     bra        +0x10 /* 000001E0 */
  181. label000001D2:
  182. 000001D2  3001                     move.w     D0, D1
  183. 000001D4  B06F 0004                cmp.w      D0, [A7 + 0x4]
  184. 000001D8  6E06                     bgt        +0x8 /* 000001E0 */
  185. 000001DA  3F6F 0004 000C           move.w     [A7 + 0xC], [A7 + 0x4]
  186. label000001E0:
  187. 000001E0  2F0A                     move.l     -[A7], A2
  188. 000001E2  3F2F 0012                move.w     -[A7], [A7 + 0x12]
  189. 000001E6  3F2F 0012                move.w     -[A7], [A7 + 0x12]
  190. 000001EA  4227                     clr.b      -[A7]
  191. 000001EC  A91B                     syscall    MoveWindow
  192. 000001EE  2F0A                     move.l     -[A7], A2
  193. 000001F0  A915                     syscall    ShowWindow
  194. 000001F2  4FEF 0010                lea.l      A7, [A7 + 0x10]
  195. 000001F6  4CDF 0418                movem.l    D3,D4,A2, [A7]+
  196. 000001FA  4E75                     rts
  197. 000001FC  8C41                     or.w       D6, D1
  198. 000001FE  7574                     moveq.l    D2, 0x74
  199. 00000200  6F50                     ble        +0x52 /* 00000252 */
  200. 00000202  6F73                     ble        +0x75 /* 00000277 */
  201. 00000204  6974                     bvs        +0x76 /* 0000027A */
  202. 00000206  696F                     bvs        +0x71 /* 00000277 */
  203. 00000208  6E00 0000                bgt        +0x2 /* 0000020A */
  204. // begin alternate branch 0000020A-00000214
  205. label0000020A:
  206. 0000020A  0000 48E7                ori.b      D0, 0xE7
  207. fn0000020C: // (misaligned)
  208. 0000020E  1030 4FEF                move.b     D0, <<invalid full ext with IS == 1 and I/IS == 7>>
  209. 00000212  FEF0                     .extension 0xEF0 // unimplemented
  210. // end alternate branch 0000020A-00000214
  211. label0000020A: // (misaligned)
  212. fn0000020C:
  213. 0000020C  48E7 1030                movem.l    -[A7], D3,A2,A3
  214. 00000210  4FEF FEF0                lea.l      A7, [A7 - 0x110]
  215. 00000214  266F 0120                movea.l    A3, [A7 + 0x120]
  216. 00000218  7600                     moveq.l    D3, 0x00
  217. 0000021A  594F                     subq.w     A7, 4
  218. 0000021C  3F3C 0080                move.w     -[A7], 0x80
  219. 00000220  42A7                     clr.l      -[A7]
  220. 00000222  4878 FFFF                push.l     0xFFFF
  221. 00000226  A97C                     syscall    GetNewDialog
  222. 00000228  205F                     movea.l    A0, [A7]+
  223. 0000022A  2448                     movea.l    A2, A0
  224. 0000022C  200A                     move.l     D0, A2
  225. 0000022E  6700 009A                beq        +0x9C /* 000002CA */
  226. 00000232  2F0A                     move.l     -[A7], A2
  227. 00000234  A873                     syscall    SetPort
  228. 00000236  2F0A                     move.l     -[A7], A2
  229. 00000238  4EBA FEDA                jsr        [PC - 0x126 /* 00000114 */]
  230. 0000023C  2F0A                     move.l     -[A7], A2
  231. 0000023E  3F3C 0003                move.w     -[A7], 0x3
  232. 00000242  486F 0012                pea.l      [A7 + 0x12]
  233. 00000246  486F 0118                pea.l      [A7 + 0x118]
  234. 0000024A  486F 0012                pea.l      [A7 + 0x12]
  235. 0000024E  A98D                     syscall    GetDialogItem/GetDItem
  236. 00000250  2F13                     move.l     -[A7], [A3]
  237. label00000252:
  238. 00000252  486F 0012                pea.l      [A7 + 0x12]
  239. 00000256  4EB9 0000 03F0           jsr        [0x000003F0]
  240. 0000025C  2F2F 010E                move.l     -[A7], [A7 + 0x10E]
  241. 00000260  486F 0012                pea.l      [A7 + 0x12]
  242. 00000264  A98F                     syscall    SetDialogItemText/SetIText
  243. 00000266  2F0A                     move.l     -[A7], A2
  244. 00000268  4878 0003                push.l     0x3
  245. 0000026C  3F3C 7FFF                move.w     -[A7], 0x7FFF
  246. 00000270  A97E                     syscall    SelectDialogItemText/SelIText
  247. 00000272  584F                     addq.w     A7, 4
  248. label00000274:
  249. 00000274  206F 0124                movea.l    A0, [A7 + 0x124]
  250. 00000278  2F28 0008                move.l     -[A7], [A0 + 0x8]
  251. // begin alternate branch 0000027A-00000280
  252. label0000027A:
  253. 0000027A  0008 486F                ori.b      A0, 0x6F /* 'o' */
  254. 0000027E  0112                     btst       [A2], D0
  255. // end alternate branch 0000027A-00000280
  256. label0000027A: // (misaligned)
  257. 0000027C  486F 0112                pea.l      [A7 + 0x112]
  258. 00000280  A991                     syscall    ModalDialog
  259. 00000282  0C6F 0001 010E           cmpi.w     [A7 + 0x10E], 0x1
  260. 00000288  6708                     beq        +0xA /* 00000292 */
  261. 0000028A  0C6F 0002 010E           cmpi.w     [A7 + 0x10E], 0x2
  262. 00000290  66E2                     bne        -0x1C /* 00000274 */
  263. label00000292:
  264. 00000292  0C6F 0001 010E           cmpi.w     [A7 + 0x10E], 0x1
  265. 00000298  662C                     bne        +0x2E /* 000002C6 */
  266. 0000029A  7601                     moveq.l    D3, 0x01
  267. 0000029C  2F0A                     move.l     -[A7], A2
  268. 0000029E  3F3C 0003                move.w     -[A7], 0x3
  269. 000002A2  486F 000E                pea.l      [A7 + 0xE]
  270. 000002A6  486F 0114                pea.l      [A7 + 0x114]
  271. 000002AA  486F 000E                pea.l      [A7 + 0xE]
  272. 000002AE  A98D                     syscall    GetDialogItem/GetDItem
  273. 000002B0  2F2F 010A                move.l     -[A7], [A7 + 0x10A]
  274. 000002B4  486F 000E                pea.l      [A7 + 0xE]
  275. 000002B8  A990                     syscall    GetDialogItemText/GetIText
  276. 000002BA  486F 000A                pea.l      [A7 + 0xA]
  277. 000002BE  2F0B                     move.l     -[A7], A3
  278. 000002C0  4EB9 0000 03DC           jsr        [0x000003DC]
  279. label000002C6:
  280. 000002C6  2F0A                     move.l     -[A7], A2
  281. 000002C8  A983                     syscall    DisposeDialog
  282. label000002CA:
  283. 000002CA  1003                     move.b     D0, D3
  284. 000002CC  4FEF 0110                lea.l      A7, [A7 + 0x110]
  285. 000002D0  4CDF 0C08                movem.l    D3,A2,A3, [A7]+
  286. 000002D4  4E75                     rts
  287. 000002D6  8967                     or.w       -[A7], D4
  288. 000002D8  6574                     bcs        +0x76 /* 0000034E */
  289. 000002DA  5061                     addq.w     -[A1], 8
  290. 000002DC  7261                     moveq.l    D1, 0x61
  291. 000002DE  6D73                     blt        +0x75 /* 00000353 */
  292. 000002E0  0000 48E7                ori.b      D0, 0xE7
  293. // begin alternate branch 000002E2-000002E8
  294. label000002E2:
  295. 000002E2  48E7 1E32                movem.l    -[A7], D3,D4,D5,D6,A2,A3,A6
  296. 000002E6  594F                     subq.w     A7, 4
  297. // end alternate branch 000002E2-000002E8
  298. label000002E2: // (misaligned)
  299. 000002E4  1E32 594F                move.b     D7, <<invalid full ext with IS == 1 and I/IS == 7>>
  300. 000002E8  2C6F 0024                movea.l    A6, [A7 + 0x24]
  301. 000002EC  2A2F 002C                move.l     D5, [A7 + 0x2C]
  302. 000002F0  2C2F 0030                move.l     D6, [A7 + 0x30]
  303. 000002F4  2456                     movea.l    A2, [A6]
  304. 000002F6  2656                     movea.l    A3, [A6]
  305. 000002F8  7078                     moveq.l    D0, 0x78
  306. 000002FA  2E80                     move.l     [A7], D0
  307. 000002FC  2F2F 0034                move.l     -[A7], [A7 + 0x34]
  308. 00000300  486F 0004                pea.l      [A7 + 0x4]
  309. 00000304  4EBA FF06                jsr        [PC - 0xFA /* 0000020C */]
  310. 00000308  4A00                     tst.b      D0
  311. 0000030A  504F                     addq.w     A7, 8
  312. 0000030C  6700 00B8                beq        +0xBA /* 000003C6 */
  313. 00000310  206F 0028                movea.l    A0, [A7 + 0x28]
  314. 00000314  7000                     moveq.l    D0, 0x00
  315. 00000316  1028 002A                move.b     D0, [A0 + 0x2A]
  316. 0000031A  5140                     subq.w     D0, 8
  317. 0000031C  6708                     beq        +0xA /* 00000326 */
  318. 0000031E  5140                     subq.w     D0, 8
  319. 00000320  674C                     beq        +0x4E /* 0000036E */
  320. 00000322  6000 00A2                bra        +0xA4 /* 000003C6 */
  321. label00000326:
  322. 00000326  D5C5                     add.l      A2, D5
  323. 00000328  7800                     moveq.l    D4, 0x00
  324. 0000032A  6038                     bra        +0x3A /* 00000364 */
  325. label0000032C:
  326. 0000032C  1612                     move.b     D3, [A2]
  327. 0000032E  49C3                     lea.l      A4, D3
  328. 00000330  0C83 0000 0080           cmpi.l     D3, 0x80
  329. 00000336  6D06                     blt        +0x8 /* 0000033E */
  330. 00000338  0483 0000 00FF           subi.l     D3, 0xFF
  331. label0000033E:
  332. 0000033E  2217                     move.l     D1, [A7]
  333. 00000340  4C01 3800                movem.w    A3,A4,A5, D1
  334. 00000344  4C7C 3803 0000 0064      movem.l    D0,D1,A3,A4,A5, 0x64 /* 'd' */
  335. 0000034C  707F                     moveq.l    D0, 0x7F
  336. label0000034E:
  337. 0000034E  B680                     cmp.l      D3, D0
  338. 00000350  6D04                     blt        +0x6 /* 00000356 */
  339. 00000352  767F                     moveq.l    D3, 0x7F
  340. 00000354  6008                     bra        +0xA /* 0000035E */
  341. label00000356:
  342. 00000356  7081                     moveq.l    D0, 0xFFFFFF81
  343. 00000358  B680                     cmp.l      D3, D0
  344. 0000035A  6E02                     bgt        +0x4 /* 0000035E */
  345. 0000035C  7681                     moveq.l    D3, 0xFFFFFF81
  346. label0000035E:
  347. 0000035E  1483                     move.b     [A2], D3
  348. 00000360  528A                     addq.l     A2, 1
  349. 00000362  5284                     addq.l     D4, 1
  350. label00000364:
  351. 00000364  2006                     move.l     D0, D6
  352. 00000366  9085                     sub.l      D0, D5
  353. 00000368  B880                     cmp.l      D4, D0
  354. 0000036A  6DC0                     blt        -0x3E /* 0000032C */
  355. 0000036C  6058                     bra        +0x5A /* 000003C6 */
  356. label0000036E:
  357. 0000036E  2005                     move.l     D0, D5
  358. 00000370  4C7C 0800 0000 0002      movem.l    A3, 0x2
  359. 00000378  D080                     add.l      D0, D0
  360. 0000037A  D7C0                     add.l      A3, D0
  361. 0000037C  7800                     moveq.l    D4, 0x00
  362. 0000037E  6036                     bra        +0x38 /* 000003B6 */
  363. label00000380:
  364. 00000380  3053                     movea.w    A0, [A3]
  365. 00000382  2608                     move.l     D3, A0
  366. 00000384  2217                     move.l     D1, [A7]
  367. 00000386  4C01 3800                movem.w    A3,A4,A5, D1
  368. 0000038A  4C7C 3803 0000 0064      movem.l    D0,D1,A3,A4,A5, 0x64 /* 'd' */
  369. 00000392  0C83 0000 7FFF           cmpi.l     D3, 0x7FFF
  370. 00000398  6D08                     blt        +0xA /* 000003A2 */
  371. 0000039A  263C 0000 7FFF           move.l     D3, 0x7FFF
  372. 000003A0  600E                     bra        +0x10 /* 000003B0 */
  373. label000003A2:
  374. 000003A2  0C83 FFFF 8000           cmpi.l     D3, 0xFFFF8000
  375. 000003A8  6E06                     bgt        +0x8 /* 000003B0 */
  376. 000003AA  263C FFFF 8000           move.l     D3, 0xFFFF8000
  377. label000003B0:
  378. 000003B0  3683                     move.w     [A3], D3
  379. 000003B2  548B                     addq.l     A3, 2
  380. 000003B4  5284                     addq.l     D4, 1
  381. label000003B6:
  382. 000003B6  2006                     move.l     D0, D6
  383. 000003B8  9085                     sub.l      D0, D5
  384. 000003BA  4C7C 0800 0000 0002      movem.l    A3, 0x2
  385. 000003C2  B880                     cmp.l      D4, D0
  386. 000003C4  6DBA                     blt        -0x44 /* 00000380 */
  387. label000003C6:
  388. 000003C6  7000                     moveq.l    D0, 0x00
  389. 000003C8  584F                     addq.w     A7, 4
  390. 000003CA  4CDF 4C78                movem.l    D3,D4,D5,D6,A2,A3,A6, [A7]+
  391. 000003CE  4E75                     rts
  392. 000003D0  846D 6169                or.w       D2, [A5 + 0x6169]
  393. 000003D4  6E00 0000                bgt        +0x2 /* 000003D6 */
  394. // begin alternate branch 000003D6-000003E2
  395. label000003D6:
  396. 000003D6  0000 206F                ori.b      D0, 0x6F /* 'o' */
  397. 000003DA  0008 3F3C                ori.b      A0, 0x3C /* '<' */
  398. 000003DE  0001 A9EE                ori.b      D1, 0xEE
  399. // end alternate branch 000003D6-000003E2
  400. label000003D6: // (misaligned)
  401. 000003D8  206F 0008                movea.l    A0, [A7 + 0x8]
  402. 000003DC  3F3C 0001                move.w     -[A7], 0x1
  403. 000003E0  A9EE                     syscall    Pack7/DecStr68K
  404. 000003E2  206F 0004                movea.l    A0, [A7 + 0x4]
  405. 000003E6  2080                     move.l     [A0], D0
  406. 000003E8  4EFA 000E                jmp        [PC + 0xE /* 000003F8 */]
  407. 000003EC  206F 0004                movea.l    A0, [A7 + 0x4]
  408. 000003F0  202F 0008                move.l     D0, [A7 + 0x8]
  409. 000003F4  4267                     clr.w      -[A7]
  410. 000003F6  A9EE                     syscall    Pack7/DecStr68K
  411. label000003F8:
  412. 000003F8  205F                     movea.l    A0, [A7]+
  413. 000003FA  504F                     addq.w     A7, 8
  414. 000003FC  4ED0                     jmp        [A0]
  415. 000003FE  0000 0000                ori.b      D0, 0x0
  416. 00000402  0000 0000                ori.b      D0, 0x0
  417. 00000406  0241 2EB5                andi.w     D1, 0x2EB5
  418.